<?php defined('SYSPATH') OR die('No direct access allowed.');
/**
 * @param VERIFY
 * -----------------------------------------------------
 * (*) 注意：表达式中需要逗号,则用&comma;代替
 * (*) 正则表达式记得在结尾加上*来表示无长度限制,如username，尽量不在正则表达式中做总长度的限制
 * (*) @string是不会保留前后空格的trim('string')，@text 则会保留前后空格
 * @required,@expression 表示无限制长度
 * @required,@expression,@length 表示大于等于此长度
 * @required,@expression,@length_min,@length_max 表示长度在某一范围内
 * @required,@expression,@length_min,@length_max,@ansi 采用ANSI双字节的模式计算长度,一般用于汉字，一个汉字长度为2，参考：nickname
 * @required,[string],@length_min,@.... TRIM之后的字符串
 * @required,[text],@length_min,@.... 字符串(前后可包含空格或回车)
 * @required,[email],@length_min,@.... Email
 * @required,[date] 日期，一律按照中国标准：2013-1-2 / 2013-01-02
 * @required,[time] 时间，同上，9:1:5 / 09:01:05
 * @required,[datetime],@length_min,@....  日期时间，同上 2013-1-2 9:1:5 / 2013-01-02 09:01:05
 * @required,[url] @length_min,@....  网址，以 http:// https:// 打头
 * @required,[int]/[float]/[timestamp]/[timetick],@length_min,... 指定长度范围的数字
 * @required,[int]/[float]/[timestamp]/[timetick],@value_min,.... 表示其值必须为某范围,比如 0,int,v12,v24 表示其值为整数,并且在12~24以内，参考：birthyear
 * @required,type,@length_min,... 取数据库Fields中的数据进行校验
 * @required,data,@length_min,... 在参数中的数组，参考part
 * 
 * @param TYPE
 * -----------------------------------------------------
 * 参考area hometown
 * TYPE => true的情况，则表示此字段在Fields数据库中有选项，配合VERIFY使用，如：[verify=>'1,type',type=>'sex']表示必填，为type类型，程序会校验Model_Fields中sex的值
 * TYPE => 'xxx'的情况，则表示取[xxx]名称的值做校验，如hometown取area的值做校验
 *
 * @param MULTI
 * -----------------------------------------------------
 * 参考
 * 多选的情况(MULTI => true)，如果有@length @length_min @length_max的配置 则表示需要限制的checkbox个数
 *
 * @param GREATER
 * -----------------------------------------------------
 * 必须大于某字段，比如date_max > date_min
 *
 * @param TEXT
 * -----------------------------------------------------
 * 此字段的名字
 *
 * @param DATA
 * -----------------------------------------------------
 * 参考part
 * 当VERIFY表达式为data时，此参数为其效验值，比如：[verify=>'1,data',data=>['monday','sunday']]
 *
 * @param REMOTE
 * -----------------------------------------------------
 * 参考username
 * 比如可以检查用户名是否存在，值为校验的网址
 * 
 * @param MESSAGE
 * -----------------------------------------------------
 * 参考username
 * 在遇到错误时,输出此消息
 * 
 */
return array(
/*
	'member' => array(
		'edit' => array(
			'username' => array(
				'verify' => '1,[a-z0-9\x{4e00}-\x{9fa5}\x{f900}-\x{fa2d}]*,2,50', //utf-8
				'text' => '用户名',
				'remote' => 'check_name.php',
				'message' => '请输入2~50个汉字或字母',
			),
			'nickname' => array(
				'verify' => '1,[a-z\s\x{4e00}-\x{9fa5}\x{f900}-\x{fa2d}]*,2,50,a', //ansi
				'text' => '昵称',
			),
			'area' => array(
				'verify' => '0,type',
				'type' => TRUE,
				'text' => '现居地',
			),
			'hometown' => array(
				'verify' => '0,type',
				'type' => 'area',
				'text' => '家乡',
			),
			'part' => array(
				'verify' => '1,data',
				'data' => 'array('mainland', 'taiwan', 'hong kong'),
				'text' => '所在地域',
			),
			'sex' => array(
				'verify' => '1,type',
				'type' => true,
				'text' => '性别',
			),
			'birthyear' => array(
				'verify' => '1,int,v1940,v'.date('Y'),
				'text' => '出生年份',
			),
			'introduce' => array(
				'verify' => '0,text',
				'text' => '自我介绍',
			),
		),
	),
*/
	'publish' => array(
		'edit' => array(
			'url' => array(
				'verify' => '1,url,5,1000',
				'text' => '网址',
			),
			'secret' => array(
				'verify' => '1,text',
				'text' => '密钥',
			),
			'encode' => array(
				'verify' => '1,bool',
				'text' => '是否已加密',
			),
		),
	),
	'wizard' => array(
		'edit' => array(
			'model_name' => array(
				'verify' => '1,[a-z_\d]*,1,35',
				'text' => '模块名称',
			),
			'table_name' => array(
				'verify' => '1,[a-z_-\d]*',
				'text' => '表名',
			),
			'subtable_name' => array(
				'verify' => '0,[a-z_-\d]*',
				'text' => '子表名称',
				'multi' => true,
			),
		),
	),
);